package leibulei;
/*
* 用static修饰的内部类和Inner Class有很大的不同，它
* 不再依附于Outer的实例，而是一个完全独立的类，
* 因此无法引用Outer.this，
* 但它可以访问Outer的private静态字段和静态方法。
* 如果把StaticNested移到Outer之外，
* 就失去了访问private的权限。*/
public class StaticNestedClass {
    public static void main(String[] args) {
        Outer3.StaticNested sn = new Outer3.StaticNested();
        sn.hello();
    }
}
class Outer3 {
    private static String NAME = "OUTER";

    private String name;

    Outer3(String name) {
        this.name = name;
    }

    static class StaticNested {
        void hello() {
            System.out.println("Hello, " + Outer3.NAME);
        }
    }
}
